package com.exer;

import org.junit.jupiter.api.Test;

/**
 * 涉及String类与其他结构之间的转化
 */
public class StringTest01 {

    /**
     * 复习
     *    String与基本数据类型、包装类之间的转换
     *
     *    String --> 基本数据类型、包装类：调用包装类的静态方法：parseXxx(str)
     *    基本数据类型、包装类 --> String:调用String重载的valueOf(xxx)
     */

    @Test
    public void test01() {
        String str1 = "123";
        //int num1 = (int) str1;  强转不行
        int num = Integer.parseInt(str1);
        System.out.println(num);

        //证明转型成功
        System.out.println(str1.equals(num));

        String str3 = num + "";
        System.out.println(str3);
        System.out.println(str1 == str3);

    }

    /**
     * String与char[]之间的转换
     *
     * String --> char[]:调用String的toCharArray()
     * char[] --> String:调用String的构造器
     */
    @Test
    public void test02(){
        String str1 = "abc123";

        char[] charArray = str1.toCharArray();
        for (int i = 0; i < charArray.length; i++) {
            System.out.println(charArray[i]);
        }

        char[] arr = {'h', 'e', 'l', 'l', 'o'};
        String str2 = new String(arr);
        System.out.println(str2);
    }

}


